写在开头
1.第二次发布,希望能发布上
2.每当碰到新的问题搜索时,总是搜索多个结果才能从复杂的答案中理解清楚
3.直到遇到了思否,答案简单明了,一看就懂
希望自己也能很清晰地表达清楚,让朋友一看就懂,知道什么时候该用它
以后会努力学习,写一写关于前端框架和es6的
es6 find
arr.find(item,index,arr)=>{return item.id == 2}
//(item里每一项对比,条件)
//item为循环的每一项
//index为角标
//arr为数组
数据数组
const arr = [
{id:"1",name:"Jim",age:"20"},
{id:"2",name:"Lily",age:"18",test:"测试"},
{id:"3",name:"Mei",age:"45"},
{id:"2",name:"Jane",age:"13"}
]
实例问题
寻找id=2 的数据?
解决写法
1.之前for循环写法
let output=[]
for(let i = 0;i<arr.length;i++ ){
if (arr[i].id==2) {
output.push(arr[i])
}
}
// {id: "2", name: "Lily", age: "18", test: "测试"},{id: "2", name: "Jane", age: "13"}
2 用find写法
let output = arr.find((item,index,arr)=>{
return item.id == '2'
})
// {id: "2", name: "Lily", age: "18", test: "测试"}
3 用findIdex找到数组下标
let index = arr.find((item,index,arr)=>{
return item.id == '2'
})
arr.splice(index,1)
// {id: "2", name: "Lily", age: "18", test: "测试"} 被删除
总结
- 数组内数据查询
- 当我们需要查询出唯一一条数据时,可以选择用find
- 当查询不到符合条件的数据时,返回 undefined
注意
- 当find查询到第一条与条件相符的数据时,会停止查询,只会查询出第一条相符数据
- 不兼容IE浏览器 (不包含IE edge)
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。